import sys
from PyQt5.QtWidgets import QMainWindow, QApplication
from PyQt5.QtGui import QIcon
'''
窗口的setWindowIcon方法用于设置窗口的图标，只在Windows中可用
QApplication.setWindowIcon用于设置主窗口的图标和应用程序图标，但调用了窗口的setWindowIcon方法
QApplication.setWindowIcon方法就只能用于设置应用程序图标了
'''

class IconForm(QMainWindow):
    def __init__(self, parent=None):
        super(IconForm, self).__init__(parent)
        self.iniUI()

    def iniUI(self):
        self.setGeometry(300, 300, 400, 300)
        #  设置主窗口的标题 此方法只能在windows系统下设置左上角图标
        #  self.setWindowTitle('设置窗口图标')
        #  设置窗口图标
        self.setWindowIcon(QIcon('./images/favicon.ico'))


if __name__ == '__main__':
    app = QApplication(sys.argv)
    #  设置应用程序的图标
    app.setWindowIcon(QIcon('./images/favicon.ico'))
    main = IconForm()
    main.show()
    sys.exit(app.exec_())